package com.runfast.paotui.dao.model;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class BusinessHoursExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    private Integer limit;

    private Integer offset;

    public BusinessHoursExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    public void setLimit(Integer limit) {
        this.limit = limit;
    }

    public Integer getLimit() {
        return limit;
    }

    public void setOffset(Integer offset) {
        this.offset = offset;
    }

    public Integer getOffset() {
        return offset;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andNameIsNull() {
            addCriterion("name is null");
            return (Criteria) this;
        }

        public Criteria andNameIsNotNull() {
            addCriterion("name is not null");
            return (Criteria) this;
        }

        public Criteria andNameEqualTo(String value) {
            addCriterion("name =", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotEqualTo(String value) {
            addCriterion("name <>", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThan(String value) {
            addCriterion("name >", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThanOrEqualTo(String value) {
            addCriterion("name >=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThan(String value) {
            addCriterion("name <", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThanOrEqualTo(String value) {
            addCriterion("name <=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLike(String value) {
            addCriterion("name like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotLike(String value) {
            addCriterion("name not like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameIn(List<String> values) {
            addCriterion("name in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotIn(List<String> values) {
            addCriterion("name not in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameBetween(String value1, String value2) {
            addCriterion("name between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotBetween(String value1, String value2) {
            addCriterion("name not between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("update_time is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("update_time is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("update_time =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Date value) {
            addCriterion("update_time <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Date value) {
            addCriterion("update_time >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("update_time >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Date value) {
            addCriterion("update_time <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
            addCriterion("update_time <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Date> values) {
            addCriterion("update_time in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Date> values) {
            addCriterion("update_time not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
            addCriterion("update_time between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("update_time not between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andCreateByIsNull() {
            addCriterion("create_by is null");
            return (Criteria) this;
        }

        public Criteria andCreateByIsNotNull() {
            addCriterion("create_by is not null");
            return (Criteria) this;
        }

        public Criteria andCreateByEqualTo(Integer value) {
            addCriterion("create_by =", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByNotEqualTo(Integer value) {
            addCriterion("create_by <>", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByGreaterThan(Integer value) {
            addCriterion("create_by >", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByGreaterThanOrEqualTo(Integer value) {
            addCriterion("create_by >=", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByLessThan(Integer value) {
            addCriterion("create_by <", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByLessThanOrEqualTo(Integer value) {
            addCriterion("create_by <=", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByIn(List<Integer> values) {
            addCriterion("create_by in", values, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByNotIn(List<Integer> values) {
            addCriterion("create_by not in", values, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByBetween(Integer value1, Integer value2) {
            addCriterion("create_by between", value1, value2, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByNotBetween(Integer value1, Integer value2) {
            addCriterion("create_by not between", value1, value2, "createBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByIsNull() {
            addCriterion("update_by is null");
            return (Criteria) this;
        }

        public Criteria andUpdateByIsNotNull() {
            addCriterion("update_by is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateByEqualTo(Integer value) {
            addCriterion("update_by =", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByNotEqualTo(Integer value) {
            addCriterion("update_by <>", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByGreaterThan(Integer value) {
            addCriterion("update_by >", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByGreaterThanOrEqualTo(Integer value) {
            addCriterion("update_by >=", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByLessThan(Integer value) {
            addCriterion("update_by <", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByLessThanOrEqualTo(Integer value) {
            addCriterion("update_by <=", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByIn(List<Integer> values) {
            addCriterion("update_by in", values, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByNotIn(List<Integer> values) {
            addCriterion("update_by not in", values, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByBetween(Integer value1, Integer value2) {
            addCriterion("update_by between", value1, value2, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByNotBetween(Integer value1, Integer value2) {
            addCriterion("update_by not between", value1, value2, "updateBy");
            return (Criteria) this;
        }

        public Criteria andFirstStartTimeIsNull() {
            addCriterion("first_start_time is null");
            return (Criteria) this;
        }

        public Criteria andFirstStartTimeIsNotNull() {
            addCriterion("first_start_time is not null");
            return (Criteria) this;
        }

        public Criteria andFirstStartTimeEqualTo(String value) {
            addCriterion("first_start_time =", value, "firstStartTime");
            return (Criteria) this;
        }

        public Criteria andFirstStartTimeNotEqualTo(String value) {
            addCriterion("first_start_time <>", value, "firstStartTime");
            return (Criteria) this;
        }

        public Criteria andFirstStartTimeGreaterThan(String value) {
            addCriterion("first_start_time >", value, "firstStartTime");
            return (Criteria) this;
        }

        public Criteria andFirstStartTimeGreaterThanOrEqualTo(String value) {
            addCriterion("first_start_time >=", value, "firstStartTime");
            return (Criteria) this;
        }

        public Criteria andFirstStartTimeLessThan(String value) {
            addCriterion("first_start_time <", value, "firstStartTime");
            return (Criteria) this;
        }

        public Criteria andFirstStartTimeLessThanOrEqualTo(String value) {
            addCriterion("first_start_time <=", value, "firstStartTime");
            return (Criteria) this;
        }

        public Criteria andFirstStartTimeLike(String value) {
            addCriterion("first_start_time like", value, "firstStartTime");
            return (Criteria) this;
        }

        public Criteria andFirstStartTimeNotLike(String value) {
            addCriterion("first_start_time not like", value, "firstStartTime");
            return (Criteria) this;
        }

        public Criteria andFirstStartTimeIn(List<String> values) {
            addCriterion("first_start_time in", values, "firstStartTime");
            return (Criteria) this;
        }

        public Criteria andFirstStartTimeNotIn(List<String> values) {
            addCriterion("first_start_time not in", values, "firstStartTime");
            return (Criteria) this;
        }

        public Criteria andFirstStartTimeBetween(String value1, String value2) {
            addCriterion("first_start_time between", value1, value2, "firstStartTime");
            return (Criteria) this;
        }

        public Criteria andFirstStartTimeNotBetween(String value1, String value2) {
            addCriterion("first_start_time not between", value1, value2, "firstStartTime");
            return (Criteria) this;
        }

        public Criteria andFirstEndTimeIsNull() {
            addCriterion("first_end_time is null");
            return (Criteria) this;
        }

        public Criteria andFirstEndTimeIsNotNull() {
            addCriterion("first_end_time is not null");
            return (Criteria) this;
        }

        public Criteria andFirstEndTimeEqualTo(String value) {
            addCriterion("first_end_time =", value, "firstEndTime");
            return (Criteria) this;
        }

        public Criteria andFirstEndTimeNotEqualTo(String value) {
            addCriterion("first_end_time <>", value, "firstEndTime");
            return (Criteria) this;
        }

        public Criteria andFirstEndTimeGreaterThan(String value) {
            addCriterion("first_end_time >", value, "firstEndTime");
            return (Criteria) this;
        }

        public Criteria andFirstEndTimeGreaterThanOrEqualTo(String value) {
            addCriterion("first_end_time >=", value, "firstEndTime");
            return (Criteria) this;
        }

        public Criteria andFirstEndTimeLessThan(String value) {
            addCriterion("first_end_time <", value, "firstEndTime");
            return (Criteria) this;
        }

        public Criteria andFirstEndTimeLessThanOrEqualTo(String value) {
            addCriterion("first_end_time <=", value, "firstEndTime");
            return (Criteria) this;
        }

        public Criteria andFirstEndTimeLike(String value) {
            addCriterion("first_end_time like", value, "firstEndTime");
            return (Criteria) this;
        }

        public Criteria andFirstEndTimeNotLike(String value) {
            addCriterion("first_end_time not like", value, "firstEndTime");
            return (Criteria) this;
        }

        public Criteria andFirstEndTimeIn(List<String> values) {
            addCriterion("first_end_time in", values, "firstEndTime");
            return (Criteria) this;
        }

        public Criteria andFirstEndTimeNotIn(List<String> values) {
            addCriterion("first_end_time not in", values, "firstEndTime");
            return (Criteria) this;
        }

        public Criteria andFirstEndTimeBetween(String value1, String value2) {
            addCriterion("first_end_time between", value1, value2, "firstEndTime");
            return (Criteria) this;
        }

        public Criteria andFirstEndTimeNotBetween(String value1, String value2) {
            addCriterion("first_end_time not between", value1, value2, "firstEndTime");
            return (Criteria) this;
        }

        public Criteria andFirstPlanIdIsNull() {
            addCriterion("first_plan_id is null");
            return (Criteria) this;
        }

        public Criteria andFirstPlanIdIsNotNull() {
            addCriterion("first_plan_id is not null");
            return (Criteria) this;
        }

        public Criteria andFirstPlanIdEqualTo(Integer value) {
            addCriterion("first_plan_id =", value, "firstPlanId");
            return (Criteria) this;
        }

        public Criteria andFirstPlanIdNotEqualTo(Integer value) {
            addCriterion("first_plan_id <>", value, "firstPlanId");
            return (Criteria) this;
        }

        public Criteria andFirstPlanIdGreaterThan(Integer value) {
            addCriterion("first_plan_id >", value, "firstPlanId");
            return (Criteria) this;
        }

        public Criteria andFirstPlanIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("first_plan_id >=", value, "firstPlanId");
            return (Criteria) this;
        }

        public Criteria andFirstPlanIdLessThan(Integer value) {
            addCriterion("first_plan_id <", value, "firstPlanId");
            return (Criteria) this;
        }

        public Criteria andFirstPlanIdLessThanOrEqualTo(Integer value) {
            addCriterion("first_plan_id <=", value, "firstPlanId");
            return (Criteria) this;
        }

        public Criteria andFirstPlanIdIn(List<Integer> values) {
            addCriterion("first_plan_id in", values, "firstPlanId");
            return (Criteria) this;
        }

        public Criteria andFirstPlanIdNotIn(List<Integer> values) {
            addCriterion("first_plan_id not in", values, "firstPlanId");
            return (Criteria) this;
        }

        public Criteria andFirstPlanIdBetween(Integer value1, Integer value2) {
            addCriterion("first_plan_id between", value1, value2, "firstPlanId");
            return (Criteria) this;
        }

        public Criteria andFirstPlanIdNotBetween(Integer value1, Integer value2) {
            addCriterion("first_plan_id not between", value1, value2, "firstPlanId");
            return (Criteria) this;
        }

        public Criteria andSecondStartTimeIsNull() {
            addCriterion("second_start_time is null");
            return (Criteria) this;
        }

        public Criteria andSecondStartTimeIsNotNull() {
            addCriterion("second_start_time is not null");
            return (Criteria) this;
        }

        public Criteria andSecondStartTimeEqualTo(String value) {
            addCriterion("second_start_time =", value, "secondStartTime");
            return (Criteria) this;
        }

        public Criteria andSecondStartTimeNotEqualTo(String value) {
            addCriterion("second_start_time <>", value, "secondStartTime");
            return (Criteria) this;
        }

        public Criteria andSecondStartTimeGreaterThan(String value) {
            addCriterion("second_start_time >", value, "secondStartTime");
            return (Criteria) this;
        }

        public Criteria andSecondStartTimeGreaterThanOrEqualTo(String value) {
            addCriterion("second_start_time >=", value, "secondStartTime");
            return (Criteria) this;
        }

        public Criteria andSecondStartTimeLessThan(String value) {
            addCriterion("second_start_time <", value, "secondStartTime");
            return (Criteria) this;
        }

        public Criteria andSecondStartTimeLessThanOrEqualTo(String value) {
            addCriterion("second_start_time <=", value, "secondStartTime");
            return (Criteria) this;
        }

        public Criteria andSecondStartTimeLike(String value) {
            addCriterion("second_start_time like", value, "secondStartTime");
            return (Criteria) this;
        }

        public Criteria andSecondStartTimeNotLike(String value) {
            addCriterion("second_start_time not like", value, "secondStartTime");
            return (Criteria) this;
        }

        public Criteria andSecondStartTimeIn(List<String> values) {
            addCriterion("second_start_time in", values, "secondStartTime");
            return (Criteria) this;
        }

        public Criteria andSecondStartTimeNotIn(List<String> values) {
            addCriterion("second_start_time not in", values, "secondStartTime");
            return (Criteria) this;
        }

        public Criteria andSecondStartTimeBetween(String value1, String value2) {
            addCriterion("second_start_time between", value1, value2, "secondStartTime");
            return (Criteria) this;
        }

        public Criteria andSecondStartTimeNotBetween(String value1, String value2) {
            addCriterion("second_start_time not between", value1, value2, "secondStartTime");
            return (Criteria) this;
        }

        public Criteria andSecondEndTimeIsNull() {
            addCriterion("second_end_time is null");
            return (Criteria) this;
        }

        public Criteria andSecondEndTimeIsNotNull() {
            addCriterion("second_end_time is not null");
            return (Criteria) this;
        }

        public Criteria andSecondEndTimeEqualTo(String value) {
            addCriterion("second_end_time =", value, "secondEndTime");
            return (Criteria) this;
        }

        public Criteria andSecondEndTimeNotEqualTo(String value) {
            addCriterion("second_end_time <>", value, "secondEndTime");
            return (Criteria) this;
        }

        public Criteria andSecondEndTimeGreaterThan(String value) {
            addCriterion("second_end_time >", value, "secondEndTime");
            return (Criteria) this;
        }

        public Criteria andSecondEndTimeGreaterThanOrEqualTo(String value) {
            addCriterion("second_end_time >=", value, "secondEndTime");
            return (Criteria) this;
        }

        public Criteria andSecondEndTimeLessThan(String value) {
            addCriterion("second_end_time <", value, "secondEndTime");
            return (Criteria) this;
        }

        public Criteria andSecondEndTimeLessThanOrEqualTo(String value) {
            addCriterion("second_end_time <=", value, "secondEndTime");
            return (Criteria) this;
        }

        public Criteria andSecondEndTimeLike(String value) {
            addCriterion("second_end_time like", value, "secondEndTime");
            return (Criteria) this;
        }

        public Criteria andSecondEndTimeNotLike(String value) {
            addCriterion("second_end_time not like", value, "secondEndTime");
            return (Criteria) this;
        }

        public Criteria andSecondEndTimeIn(List<String> values) {
            addCriterion("second_end_time in", values, "secondEndTime");
            return (Criteria) this;
        }

        public Criteria andSecondEndTimeNotIn(List<String> values) {
            addCriterion("second_end_time not in", values, "secondEndTime");
            return (Criteria) this;
        }

        public Criteria andSecondEndTimeBetween(String value1, String value2) {
            addCriterion("second_end_time between", value1, value2, "secondEndTime");
            return (Criteria) this;
        }

        public Criteria andSecondEndTimeNotBetween(String value1, String value2) {
            addCriterion("second_end_time not between", value1, value2, "secondEndTime");
            return (Criteria) this;
        }

        public Criteria andSecondPlanIdIsNull() {
            addCriterion("second_plan_id is null");
            return (Criteria) this;
        }

        public Criteria andSecondPlanIdIsNotNull() {
            addCriterion("second_plan_id is not null");
            return (Criteria) this;
        }

        public Criteria andSecondPlanIdEqualTo(Integer value) {
            addCriterion("second_plan_id =", value, "secondPlanId");
            return (Criteria) this;
        }

        public Criteria andSecondPlanIdNotEqualTo(Integer value) {
            addCriterion("second_plan_id <>", value, "secondPlanId");
            return (Criteria) this;
        }

        public Criteria andSecondPlanIdGreaterThan(Integer value) {
            addCriterion("second_plan_id >", value, "secondPlanId");
            return (Criteria) this;
        }

        public Criteria andSecondPlanIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("second_plan_id >=", value, "secondPlanId");
            return (Criteria) this;
        }

        public Criteria andSecondPlanIdLessThan(Integer value) {
            addCriterion("second_plan_id <", value, "secondPlanId");
            return (Criteria) this;
        }

        public Criteria andSecondPlanIdLessThanOrEqualTo(Integer value) {
            addCriterion("second_plan_id <=", value, "secondPlanId");
            return (Criteria) this;
        }

        public Criteria andSecondPlanIdIn(List<Integer> values) {
            addCriterion("second_plan_id in", values, "secondPlanId");
            return (Criteria) this;
        }

        public Criteria andSecondPlanIdNotIn(List<Integer> values) {
            addCriterion("second_plan_id not in", values, "secondPlanId");
            return (Criteria) this;
        }

        public Criteria andSecondPlanIdBetween(Integer value1, Integer value2) {
            addCriterion("second_plan_id between", value1, value2, "secondPlanId");
            return (Criteria) this;
        }

        public Criteria andSecondPlanIdNotBetween(Integer value1, Integer value2) {
            addCriterion("second_plan_id not between", value1, value2, "secondPlanId");
            return (Criteria) this;
        }

        public Criteria andThirdStartTimeIsNull() {
            addCriterion("third_start_time is null");
            return (Criteria) this;
        }

        public Criteria andThirdStartTimeIsNotNull() {
            addCriterion("third_start_time is not null");
            return (Criteria) this;
        }

        public Criteria andThirdStartTimeEqualTo(String value) {
            addCriterion("third_start_time =", value, "thirdStartTime");
            return (Criteria) this;
        }

        public Criteria andThirdStartTimeNotEqualTo(String value) {
            addCriterion("third_start_time <>", value, "thirdStartTime");
            return (Criteria) this;
        }

        public Criteria andThirdStartTimeGreaterThan(String value) {
            addCriterion("third_start_time >", value, "thirdStartTime");
            return (Criteria) this;
        }

        public Criteria andThirdStartTimeGreaterThanOrEqualTo(String value) {
            addCriterion("third_start_time >=", value, "thirdStartTime");
            return (Criteria) this;
        }

        public Criteria andThirdStartTimeLessThan(String value) {
            addCriterion("third_start_time <", value, "thirdStartTime");
            return (Criteria) this;
        }

        public Criteria andThirdStartTimeLessThanOrEqualTo(String value) {
            addCriterion("third_start_time <=", value, "thirdStartTime");
            return (Criteria) this;
        }

        public Criteria andThirdStartTimeLike(String value) {
            addCriterion("third_start_time like", value, "thirdStartTime");
            return (Criteria) this;
        }

        public Criteria andThirdStartTimeNotLike(String value) {
            addCriterion("third_start_time not like", value, "thirdStartTime");
            return (Criteria) this;
        }

        public Criteria andThirdStartTimeIn(List<String> values) {
            addCriterion("third_start_time in", values, "thirdStartTime");
            return (Criteria) this;
        }

        public Criteria andThirdStartTimeNotIn(List<String> values) {
            addCriterion("third_start_time not in", values, "thirdStartTime");
            return (Criteria) this;
        }

        public Criteria andThirdStartTimeBetween(String value1, String value2) {
            addCriterion("third_start_time between", value1, value2, "thirdStartTime");
            return (Criteria) this;
        }

        public Criteria andThirdStartTimeNotBetween(String value1, String value2) {
            addCriterion("third_start_time not between", value1, value2, "thirdStartTime");
            return (Criteria) this;
        }

        public Criteria andThirdEndTimeIsNull() {
            addCriterion("third_end_time is null");
            return (Criteria) this;
        }

        public Criteria andThirdEndTimeIsNotNull() {
            addCriterion("third_end_time is not null");
            return (Criteria) this;
        }

        public Criteria andThirdEndTimeEqualTo(String value) {
            addCriterion("third_end_time =", value, "thirdEndTime");
            return (Criteria) this;
        }

        public Criteria andThirdEndTimeNotEqualTo(String value) {
            addCriterion("third_end_time <>", value, "thirdEndTime");
            return (Criteria) this;
        }

        public Criteria andThirdEndTimeGreaterThan(String value) {
            addCriterion("third_end_time >", value, "thirdEndTime");
            return (Criteria) this;
        }

        public Criteria andThirdEndTimeGreaterThanOrEqualTo(String value) {
            addCriterion("third_end_time >=", value, "thirdEndTime");
            return (Criteria) this;
        }

        public Criteria andThirdEndTimeLessThan(String value) {
            addCriterion("third_end_time <", value, "thirdEndTime");
            return (Criteria) this;
        }

        public Criteria andThirdEndTimeLessThanOrEqualTo(String value) {
            addCriterion("third_end_time <=", value, "thirdEndTime");
            return (Criteria) this;
        }

        public Criteria andThirdEndTimeLike(String value) {
            addCriterion("third_end_time like", value, "thirdEndTime");
            return (Criteria) this;
        }

        public Criteria andThirdEndTimeNotLike(String value) {
            addCriterion("third_end_time not like", value, "thirdEndTime");
            return (Criteria) this;
        }

        public Criteria andThirdEndTimeIn(List<String> values) {
            addCriterion("third_end_time in", values, "thirdEndTime");
            return (Criteria) this;
        }

        public Criteria andThirdEndTimeNotIn(List<String> values) {
            addCriterion("third_end_time not in", values, "thirdEndTime");
            return (Criteria) this;
        }

        public Criteria andThirdEndTimeBetween(String value1, String value2) {
            addCriterion("third_end_time between", value1, value2, "thirdEndTime");
            return (Criteria) this;
        }

        public Criteria andThirdEndTimeNotBetween(String value1, String value2) {
            addCriterion("third_end_time not between", value1, value2, "thirdEndTime");
            return (Criteria) this;
        }

        public Criteria andThirdPlanIdIsNull() {
            addCriterion("third_plan_id is null");
            return (Criteria) this;
        }

        public Criteria andThirdPlanIdIsNotNull() {
            addCriterion("third_plan_id is not null");
            return (Criteria) this;
        }

        public Criteria andThirdPlanIdEqualTo(Integer value) {
            addCriterion("third_plan_id =", value, "thirdPlanId");
            return (Criteria) this;
        }

        public Criteria andThirdPlanIdNotEqualTo(Integer value) {
            addCriterion("third_plan_id <>", value, "thirdPlanId");
            return (Criteria) this;
        }

        public Criteria andThirdPlanIdGreaterThan(Integer value) {
            addCriterion("third_plan_id >", value, "thirdPlanId");
            return (Criteria) this;
        }

        public Criteria andThirdPlanIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("third_plan_id >=", value, "thirdPlanId");
            return (Criteria) this;
        }

        public Criteria andThirdPlanIdLessThan(Integer value) {
            addCriterion("third_plan_id <", value, "thirdPlanId");
            return (Criteria) this;
        }

        public Criteria andThirdPlanIdLessThanOrEqualTo(Integer value) {
            addCriterion("third_plan_id <=", value, "thirdPlanId");
            return (Criteria) this;
        }

        public Criteria andThirdPlanIdIn(List<Integer> values) {
            addCriterion("third_plan_id in", values, "thirdPlanId");
            return (Criteria) this;
        }

        public Criteria andThirdPlanIdNotIn(List<Integer> values) {
            addCriterion("third_plan_id not in", values, "thirdPlanId");
            return (Criteria) this;
        }

        public Criteria andThirdPlanIdBetween(Integer value1, Integer value2) {
            addCriterion("third_plan_id between", value1, value2, "thirdPlanId");
            return (Criteria) this;
        }

        public Criteria andThirdPlanIdNotBetween(Integer value1, Integer value2) {
            addCriterion("third_plan_id not between", value1, value2, "thirdPlanId");
            return (Criteria) this;
        }

        public Criteria andFourthStartTimeIsNull() {
            addCriterion("fourth_start_time is null");
            return (Criteria) this;
        }

        public Criteria andFourthStartTimeIsNotNull() {
            addCriterion("fourth_start_time is not null");
            return (Criteria) this;
        }

        public Criteria andFourthStartTimeEqualTo(String value) {
            addCriterion("fourth_start_time =", value, "fourthStartTime");
            return (Criteria) this;
        }

        public Criteria andFourthStartTimeNotEqualTo(String value) {
            addCriterion("fourth_start_time <>", value, "fourthStartTime");
            return (Criteria) this;
        }

        public Criteria andFourthStartTimeGreaterThan(String value) {
            addCriterion("fourth_start_time >", value, "fourthStartTime");
            return (Criteria) this;
        }

        public Criteria andFourthStartTimeGreaterThanOrEqualTo(String value) {
            addCriterion("fourth_start_time >=", value, "fourthStartTime");
            return (Criteria) this;
        }

        public Criteria andFourthStartTimeLessThan(String value) {
            addCriterion("fourth_start_time <", value, "fourthStartTime");
            return (Criteria) this;
        }

        public Criteria andFourthStartTimeLessThanOrEqualTo(String value) {
            addCriterion("fourth_start_time <=", value, "fourthStartTime");
            return (Criteria) this;
        }

        public Criteria andFourthStartTimeLike(String value) {
            addCriterion("fourth_start_time like", value, "fourthStartTime");
            return (Criteria) this;
        }

        public Criteria andFourthStartTimeNotLike(String value) {
            addCriterion("fourth_start_time not like", value, "fourthStartTime");
            return (Criteria) this;
        }

        public Criteria andFourthStartTimeIn(List<String> values) {
            addCriterion("fourth_start_time in", values, "fourthStartTime");
            return (Criteria) this;
        }

        public Criteria andFourthStartTimeNotIn(List<String> values) {
            addCriterion("fourth_start_time not in", values, "fourthStartTime");
            return (Criteria) this;
        }

        public Criteria andFourthStartTimeBetween(String value1, String value2) {
            addCriterion("fourth_start_time between", value1, value2, "fourthStartTime");
            return (Criteria) this;
        }

        public Criteria andFourthStartTimeNotBetween(String value1, String value2) {
            addCriterion("fourth_start_time not between", value1, value2, "fourthStartTime");
            return (Criteria) this;
        }

        public Criteria andFourthEndTimeIsNull() {
            addCriterion("fourth_end_time is null");
            return (Criteria) this;
        }

        public Criteria andFourthEndTimeIsNotNull() {
            addCriterion("fourth_end_time is not null");
            return (Criteria) this;
        }

        public Criteria andFourthEndTimeEqualTo(String value) {
            addCriterion("fourth_end_time =", value, "fourthEndTime");
            return (Criteria) this;
        }

        public Criteria andFourthEndTimeNotEqualTo(String value) {
            addCriterion("fourth_end_time <>", value, "fourthEndTime");
            return (Criteria) this;
        }

        public Criteria andFourthEndTimeGreaterThan(String value) {
            addCriterion("fourth_end_time >", value, "fourthEndTime");
            return (Criteria) this;
        }

        public Criteria andFourthEndTimeGreaterThanOrEqualTo(String value) {
            addCriterion("fourth_end_time >=", value, "fourthEndTime");
            return (Criteria) this;
        }

        public Criteria andFourthEndTimeLessThan(String value) {
            addCriterion("fourth_end_time <", value, "fourthEndTime");
            return (Criteria) this;
        }

        public Criteria andFourthEndTimeLessThanOrEqualTo(String value) {
            addCriterion("fourth_end_time <=", value, "fourthEndTime");
            return (Criteria) this;
        }

        public Criteria andFourthEndTimeLike(String value) {
            addCriterion("fourth_end_time like", value, "fourthEndTime");
            return (Criteria) this;
        }

        public Criteria andFourthEndTimeNotLike(String value) {
            addCriterion("fourth_end_time not like", value, "fourthEndTime");
            return (Criteria) this;
        }

        public Criteria andFourthEndTimeIn(List<String> values) {
            addCriterion("fourth_end_time in", values, "fourthEndTime");
            return (Criteria) this;
        }

        public Criteria andFourthEndTimeNotIn(List<String> values) {
            addCriterion("fourth_end_time not in", values, "fourthEndTime");
            return (Criteria) this;
        }

        public Criteria andFourthEndTimeBetween(String value1, String value2) {
            addCriterion("fourth_end_time between", value1, value2, "fourthEndTime");
            return (Criteria) this;
        }

        public Criteria andFourthEndTimeNotBetween(String value1, String value2) {
            addCriterion("fourth_end_time not between", value1, value2, "fourthEndTime");
            return (Criteria) this;
        }

        public Criteria andFourthPlanIdIsNull() {
            addCriterion("fourth_plan_id is null");
            return (Criteria) this;
        }

        public Criteria andFourthPlanIdIsNotNull() {
            addCriterion("fourth_plan_id is not null");
            return (Criteria) this;
        }

        public Criteria andFourthPlanIdEqualTo(Integer value) {
            addCriterion("fourth_plan_id =", value, "fourthPlanId");
            return (Criteria) this;
        }

        public Criteria andFourthPlanIdNotEqualTo(Integer value) {
            addCriterion("fourth_plan_id <>", value, "fourthPlanId");
            return (Criteria) this;
        }

        public Criteria andFourthPlanIdGreaterThan(Integer value) {
            addCriterion("fourth_plan_id >", value, "fourthPlanId");
            return (Criteria) this;
        }

        public Criteria andFourthPlanIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("fourth_plan_id >=", value, "fourthPlanId");
            return (Criteria) this;
        }

        public Criteria andFourthPlanIdLessThan(Integer value) {
            addCriterion("fourth_plan_id <", value, "fourthPlanId");
            return (Criteria) this;
        }

        public Criteria andFourthPlanIdLessThanOrEqualTo(Integer value) {
            addCriterion("fourth_plan_id <=", value, "fourthPlanId");
            return (Criteria) this;
        }

        public Criteria andFourthPlanIdIn(List<Integer> values) {
            addCriterion("fourth_plan_id in", values, "fourthPlanId");
            return (Criteria) this;
        }

        public Criteria andFourthPlanIdNotIn(List<Integer> values) {
            addCriterion("fourth_plan_id not in", values, "fourthPlanId");
            return (Criteria) this;
        }

        public Criteria andFourthPlanIdBetween(Integer value1, Integer value2) {
            addCriterion("fourth_plan_id between", value1, value2, "fourthPlanId");
            return (Criteria) this;
        }

        public Criteria andFourthPlanIdNotBetween(Integer value1, Integer value2) {
            addCriterion("fourth_plan_id not between", value1, value2, "fourthPlanId");
            return (Criteria) this;
        }

        public Criteria andFifthStartTimeIsNull() {
            addCriterion("fifth_start_time is null");
            return (Criteria) this;
        }

        public Criteria andFifthStartTimeIsNotNull() {
            addCriterion("fifth_start_time is not null");
            return (Criteria) this;
        }

        public Criteria andFifthStartTimeEqualTo(String value) {
            addCriterion("fifth_start_time =", value, "fifthStartTime");
            return (Criteria) this;
        }

        public Criteria andFifthStartTimeNotEqualTo(String value) {
            addCriterion("fifth_start_time <>", value, "fifthStartTime");
            return (Criteria) this;
        }

        public Criteria andFifthStartTimeGreaterThan(String value) {
            addCriterion("fifth_start_time >", value, "fifthStartTime");
            return (Criteria) this;
        }

        public Criteria andFifthStartTimeGreaterThanOrEqualTo(String value) {
            addCriterion("fifth_start_time >=", value, "fifthStartTime");
            return (Criteria) this;
        }

        public Criteria andFifthStartTimeLessThan(String value) {
            addCriterion("fifth_start_time <", value, "fifthStartTime");
            return (Criteria) this;
        }

        public Criteria andFifthStartTimeLessThanOrEqualTo(String value) {
            addCriterion("fifth_start_time <=", value, "fifthStartTime");
            return (Criteria) this;
        }

        public Criteria andFifthStartTimeLike(String value) {
            addCriterion("fifth_start_time like", value, "fifthStartTime");
            return (Criteria) this;
        }

        public Criteria andFifthStartTimeNotLike(String value) {
            addCriterion("fifth_start_time not like", value, "fifthStartTime");
            return (Criteria) this;
        }

        public Criteria andFifthStartTimeIn(List<String> values) {
            addCriterion("fifth_start_time in", values, "fifthStartTime");
            return (Criteria) this;
        }

        public Criteria andFifthStartTimeNotIn(List<String> values) {
            addCriterion("fifth_start_time not in", values, "fifthStartTime");
            return (Criteria) this;
        }

        public Criteria andFifthStartTimeBetween(String value1, String value2) {
            addCriterion("fifth_start_time between", value1, value2, "fifthStartTime");
            return (Criteria) this;
        }

        public Criteria andFifthStartTimeNotBetween(String value1, String value2) {
            addCriterion("fifth_start_time not between", value1, value2, "fifthStartTime");
            return (Criteria) this;
        }

        public Criteria andFifthEndTimeIsNull() {
            addCriterion("fifth_end_time is null");
            return (Criteria) this;
        }

        public Criteria andFifthEndTimeIsNotNull() {
            addCriterion("fifth_end_time is not null");
            return (Criteria) this;
        }

        public Criteria andFifthEndTimeEqualTo(String value) {
            addCriterion("fifth_end_time =", value, "fifthEndTime");
            return (Criteria) this;
        }

        public Criteria andFifthEndTimeNotEqualTo(String value) {
            addCriterion("fifth_end_time <>", value, "fifthEndTime");
            return (Criteria) this;
        }

        public Criteria andFifthEndTimeGreaterThan(String value) {
            addCriterion("fifth_end_time >", value, "fifthEndTime");
            return (Criteria) this;
        }

        public Criteria andFifthEndTimeGreaterThanOrEqualTo(String value) {
            addCriterion("fifth_end_time >=", value, "fifthEndTime");
            return (Criteria) this;
        }

        public Criteria andFifthEndTimeLessThan(String value) {
            addCriterion("fifth_end_time <", value, "fifthEndTime");
            return (Criteria) this;
        }

        public Criteria andFifthEndTimeLessThanOrEqualTo(String value) {
            addCriterion("fifth_end_time <=", value, "fifthEndTime");
            return (Criteria) this;
        }

        public Criteria andFifthEndTimeLike(String value) {
            addCriterion("fifth_end_time like", value, "fifthEndTime");
            return (Criteria) this;
        }

        public Criteria andFifthEndTimeNotLike(String value) {
            addCriterion("fifth_end_time not like", value, "fifthEndTime");
            return (Criteria) this;
        }

        public Criteria andFifthEndTimeIn(List<String> values) {
            addCriterion("fifth_end_time in", values, "fifthEndTime");
            return (Criteria) this;
        }

        public Criteria andFifthEndTimeNotIn(List<String> values) {
            addCriterion("fifth_end_time not in", values, "fifthEndTime");
            return (Criteria) this;
        }

        public Criteria andFifthEndTimeBetween(String value1, String value2) {
            addCriterion("fifth_end_time between", value1, value2, "fifthEndTime");
            return (Criteria) this;
        }

        public Criteria andFifthEndTimeNotBetween(String value1, String value2) {
            addCriterion("fifth_end_time not between", value1, value2, "fifthEndTime");
            return (Criteria) this;
        }

        public Criteria andFifthPlanIdIsNull() {
            addCriterion("fifth_plan_id is null");
            return (Criteria) this;
        }

        public Criteria andFifthPlanIdIsNotNull() {
            addCriterion("fifth_plan_id is not null");
            return (Criteria) this;
        }

        public Criteria andFifthPlanIdEqualTo(Integer value) {
            addCriterion("fifth_plan_id =", value, "fifthPlanId");
            return (Criteria) this;
        }

        public Criteria andFifthPlanIdNotEqualTo(Integer value) {
            addCriterion("fifth_plan_id <>", value, "fifthPlanId");
            return (Criteria) this;
        }

        public Criteria andFifthPlanIdGreaterThan(Integer value) {
            addCriterion("fifth_plan_id >", value, "fifthPlanId");
            return (Criteria) this;
        }

        public Criteria andFifthPlanIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("fifth_plan_id >=", value, "fifthPlanId");
            return (Criteria) this;
        }

        public Criteria andFifthPlanIdLessThan(Integer value) {
            addCriterion("fifth_plan_id <", value, "fifthPlanId");
            return (Criteria) this;
        }

        public Criteria andFifthPlanIdLessThanOrEqualTo(Integer value) {
            addCriterion("fifth_plan_id <=", value, "fifthPlanId");
            return (Criteria) this;
        }

        public Criteria andFifthPlanIdIn(List<Integer> values) {
            addCriterion("fifth_plan_id in", values, "fifthPlanId");
            return (Criteria) this;
        }

        public Criteria andFifthPlanIdNotIn(List<Integer> values) {
            addCriterion("fifth_plan_id not in", values, "fifthPlanId");
            return (Criteria) this;
        }

        public Criteria andFifthPlanIdBetween(Integer value1, Integer value2) {
            addCriterion("fifth_plan_id between", value1, value2, "fifthPlanId");
            return (Criteria) this;
        }

        public Criteria andFifthPlanIdNotBetween(Integer value1, Integer value2) {
            addCriterion("fifth_plan_id not between", value1, value2, "fifthPlanId");
            return (Criteria) this;
        }

        public Criteria andAgentIdIsNull() {
            addCriterion("agent_id is null");
            return (Criteria) this;
        }

        public Criteria andAgentIdIsNotNull() {
            addCriterion("agent_id is not null");
            return (Criteria) this;
        }

        public Criteria andAgentIdEqualTo(Integer value) {
            addCriterion("agent_id =", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdNotEqualTo(Integer value) {
            addCriterion("agent_id <>", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdGreaterThan(Integer value) {
            addCriterion("agent_id >", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("agent_id >=", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdLessThan(Integer value) {
            addCriterion("agent_id <", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdLessThanOrEqualTo(Integer value) {
            addCriterion("agent_id <=", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdIn(List<Integer> values) {
            addCriterion("agent_id in", values, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdNotIn(List<Integer> values) {
            addCriterion("agent_id not in", values, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdBetween(Integer value1, Integer value2) {
            addCriterion("agent_id between", value1, value2, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdNotBetween(Integer value1, Integer value2) {
            addCriterion("agent_id not between", value1, value2, "agentId");
            return (Criteria) this;
        }

        public Criteria andDeletedIsNull() {
            addCriterion("deleted is null");
            return (Criteria) this;
        }

        public Criteria andDeletedIsNotNull() {
            addCriterion("deleted is not null");
            return (Criteria) this;
        }

        public Criteria andDeletedEqualTo(Boolean value) {
            addCriterion("deleted =", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedNotEqualTo(Boolean value) {
            addCriterion("deleted <>", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedGreaterThan(Boolean value) {
            addCriterion("deleted >", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedGreaterThanOrEqualTo(Boolean value) {
            addCriterion("deleted >=", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedLessThan(Boolean value) {
            addCriterion("deleted <", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedLessThanOrEqualTo(Boolean value) {
            addCriterion("deleted <=", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedIn(List<Boolean> values) {
            addCriterion("deleted in", values, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedNotIn(List<Boolean> values) {
            addCriterion("deleted not in", values, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedBetween(Boolean value1, Boolean value2) {
            addCriterion("deleted between", value1, value2, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedNotBetween(Boolean value1, Boolean value2) {
            addCriterion("deleted not between", value1, value2, "deleted");
            return (Criteria) this;
        }

        public Criteria andDefaultPlanIsNull() {
            addCriterion("default_plan is null");
            return (Criteria) this;
        }

        public Criteria andDefaultPlanIsNotNull() {
            addCriterion("default_plan is not null");
            return (Criteria) this;
        }

        public Criteria andDefaultPlanEqualTo(Boolean value) {
            addCriterion("default_plan =", value, "defaultPlan");
            return (Criteria) this;
        }

        public Criteria andDefaultPlanNotEqualTo(Boolean value) {
            addCriterion("default_plan <>", value, "defaultPlan");
            return (Criteria) this;
        }

        public Criteria andDefaultPlanGreaterThan(Boolean value) {
            addCriterion("default_plan >", value, "defaultPlan");
            return (Criteria) this;
        }

        public Criteria andDefaultPlanGreaterThanOrEqualTo(Boolean value) {
            addCriterion("default_plan >=", value, "defaultPlan");
            return (Criteria) this;
        }

        public Criteria andDefaultPlanLessThan(Boolean value) {
            addCriterion("default_plan <", value, "defaultPlan");
            return (Criteria) this;
        }

        public Criteria andDefaultPlanLessThanOrEqualTo(Boolean value) {
            addCriterion("default_plan <=", value, "defaultPlan");
            return (Criteria) this;
        }

        public Criteria andDefaultPlanIn(List<Boolean> values) {
            addCriterion("default_plan in", values, "defaultPlan");
            return (Criteria) this;
        }

        public Criteria andDefaultPlanNotIn(List<Boolean> values) {
            addCriterion("default_plan not in", values, "defaultPlan");
            return (Criteria) this;
        }

        public Criteria andDefaultPlanBetween(Boolean value1, Boolean value2) {
            addCriterion("default_plan between", value1, value2, "defaultPlan");
            return (Criteria) this;
        }

        public Criteria andDefaultPlanNotBetween(Boolean value1, Boolean value2) {
            addCriterion("default_plan not between", value1, value2, "defaultPlan");
            return (Criteria) this;
        }
    }

    /**
     */
    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}